home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 2 / Atari Mega Archive CD - Volume 2.iso / minix / up1510b.tgz / up1510b / src / kernel / glo.h < prev    next >
C/C++ Source or Header  |  1990-07-15  |  3KB  |  71 lines

  1. /* Global variables used in the kernel. */
  2.  
  3. /* EXTERN is defined as extern except in table.c. */
  4. #ifdef _TABLE
  5. #undef EXTERN
  6. #define EXTERN
  7. #endif
  8.  
  9. /* Kernel memory. */
  10. EXTERN phys_bytes code_base;    /* base of kernel code */
  11. EXTERN phys_bytes data_base;    /* base of kernel data */
  12.  
  13. /* Low level interrupt communications. */
  14. EXTERN struct proc *held_head;    /* head of queue of held-up interrupts */
  15. EXTERN struct proc *held_tail;    /* tail of queue of held-up interrupts */
  16. EXTERN unsigned char k_reenter;    /* kernel reentry count (entry count less 1)*/
  17.  
  18. /* Process table.  Here to stop too many things having to include proc.h. */
  19. EXTERN struct proc *proc_ptr;    /* pointer to currently running process */
  20.  
  21. /* Signals. */
  22. EXTERN int sig_procs;        /* number of procs with p_pending != 0 */
  23.  
  24. /* Miscellaneous. */
  25. extern u16_t sizes[8];        /* table filled in by build */
  26. extern struct tasktab tasktab[];    /* see table.c */
  27. extern char t_stack[];        /* see table.c */
  28.  
  29. #if (CHIP == INTEL)
  30.  
  31. /* Machine type. */
  32. EXTERN int pc_at;        /* PC-AT compatible hardware interface */
  33. EXTERN int ps;            /* PS/2 */
  34. EXTERN int ps_mca;        /* PS/2 with Micro Channel */
  35. EXTERN int port_65;        /* saved contents of Planar Control Register */
  36. EXTERN unsigned processor;    /* 86, 186, 286, 386, ... */
  37. EXTERN int protected_mode;    /* nonzero if running in Intel protected mode*/
  38. extern int using_bios;        /* nonzero to force real mode (for bios_wini)*/
  39.  
  40. /* Video cards and keyboard types. */
  41. EXTERN int color;        /* nonzero if console is color, 0 if mono */
  42. EXTERN int ega;            /* nonzero if console is EGA */
  43. EXTERN int scan_code;        /* scan code of key pressed to start minix */
  44. EXTERN int snow;        /* nonzero if screen needs snow removal */
  45.  
  46. /* Memory sizes. */
  47. EXTERN unsigned ext_memsize;    /* initialized by assembler startup code */
  48. EXTERN unsigned low_memsize;
  49. EXTERN phys_clicks mem_base[NR_MEMS];    /* bases of chunks of memory */
  50. EXTERN phys_clicks mem_size[NR_MEMS];    /* sizes of chunks of memory */
  51. EXTERN unsigned char mem_type[NR_MEMS];    /* types of chunks of memory */
  52.  
  53. /* Miscellaneous. */
  54. EXTERN u16_t Ax, Bx, Cx, Dx, Es;    /* to hold registers for BIOS calls */
  55. EXTERN struct farptr_s break_vector;    /* debugger breakpoint hook */
  56. EXTERN int db_enabled;        /* nonzero if external debugger is enabled */
  57. EXTERN int db_exists;        /* nonzero if external debugger exists */
  58. extern struct segdesc_s gdt[];    /* global descriptor table for protected mode*/
  59. EXTERN struct farptr_s sstep_vector;    /* debugger single-step hook */
  60. EXTERN u16_t vec_table[VECTOR_BYTES / sizeof(u16_t)]; /* copy of BIOS vectors*/
  61.  
  62. #endif /* (CHIP == INTEL) */
  63.  
  64. #if (CHIP == M68000)
  65. EXTERN int flush_flag;        /* tells clock when to flush the tty buf */
  66. extern unsigned char font8[];    /* 8 pixel wide font table */
  67. extern unsigned char font16[];    /* 16 pixel wide font table */
  68. extern int keypad;        /* Flag for keypad mode */
  69. extern int app_mode;        /* Flag for arrow key application mode */
  70. #endif
  71.